Conventionally, there are apparatuses which transmit a plurality of pieces of data in one frame. For example, in a conventional apparatus, a sender transmits, in one frame, a plurality of pieces of data for use in one receiver, and the receiver receives the frame.
In the aforementioned conventional apparatus, however, the destination of the plurality of pieces of data is limited to one receiver.
An object of one exemplary embodiment is therefore to provide a communication control apparatus able to efficiently transmit a plurality of pieces of data having different destinations, a communication control program, a communication control method, and an information processing system.
In order to achieve the object, the exemplary embodiment employs the following features.
The exemplary embodiment is a communication control program executed by a computer of an information processing apparatus having communication functionality. The communication control program causes the computer to execute: generating transmission data which includes a plurality of pieces of data having different destinations; and transmitting the transmission data in either one of a broadcast fashion and a multicast fashion.
According to the above configuration, the plurality of pieces of data having different destinations can be transmitted together. This allows efficient transmission of the plurality of pieces of data to a plurality of devices as compared to separate transmission of individual piece of data.
In another configuration, destination information for each piece of data may be included in the transmission data.
According to the above configuration, the destination information of each piece of data can be transmitted in addition to each piece of data.
In another configuration, the communication control program may cause the computer to execute: sequentially acquiring the plurality of pieces of data; and sequentially storing the acquired plurality of pieces of data in a storage unit. The transmission data, which includes at least two of the plurality of pieces of data stored in the storage unit and the destination information of the at least two of plurality of pieces of data, is generated.
According to the above configuration, the sequentially acquired plurality of pieces of data can temporality be stored in the storage unit and the stored plurality of pieces of data can be transmitted together.
In another configuration, the communication control program may cause the computer to execute determining whether a predetermined criterion for transmitting the data stored in the storage unit is satisfied. If it is determined that the predetermined criterion is satisfied, the transmission data, which includes the at least two of plurality of pieces of data stored in the storage unit and the destination information of the at least two of plurality of pieces of data, is generated. The generated transmission data is transmitted.
According to the above configuration, if the predetermined criterion is satisfied, the data stored in the storage unit can be transmitted. This, for example, prevents data delay.
In another configuration, the communication control program may further cause the computer to execute determining whether there is data having been stored in the storage unit for a predetermined time period or longer. If it is determined that there is the data having been stored in the storage unit for the predetermined time period or longer, the transmission data, which includes at least the data having been stored in the storage unit for the predetermined time period or longer, is generated. The generated transmission data is transmitted.
According to the above configuration, the data having been stored in the storage unit for the predetermined time period or longer is transmitted. This prevents data delay.
In another configuration, the storage unit has a predetermined size, and it is determined whether the acquired data can be stored in the storage unit. If it is determined that the acquired data cannot be stored in the storage unit, the transmission data, which includes the at least two of plurality of pieces of data stored in the storage unit and the destination information of the at least two of plurality of pieces of data, is generated. The generated transmission data is transmitted.
According to the above configuration, for example, if the available space in the storage unit is too small to store data, data stored in the storage unit can be transmitted. A batch of plurality of pieces of data can be transmitted together, thus efficiently transmitting data.
In another configuration, the communication control program may further cause the computer to execute determining whether to instantly transmit the acquired piece of data. If it is determined to instantly transmit the acquired piece of data, the transmission data which includes the acquired piece of data is generated. The generated transmission data is transmitted.
According to the above configuration, the acquired data can instantly be transmitted. This allows, for example, instant transmission of data that is not to be delayed.
In another configuration, data sent from another information processing apparatus may be acquired. Source information of the plurality of pieces of data is further included in the transmission data.
According to the above configuration, the source information can be transmitted in data transmitted from another apparatus.
In another configuration, the communication control program may further cause the computer to execute receiving the transmission data sent from another information processing apparatus and retrieving, based on the destination information included in the transmission data, at least data destined for an own apparatus.
According to the above configuration, among the plurality of pieces of data included in the transmission data transmitted from another apparatus, at least data destined for an own apparatus can be retrieved therefrom.
In another configuration, the acquired piece of data may be stored in either one of a first storage area and a second storage area. The transmission data, which includes the at least two of plurality of pieces of data stored in either one of the first storage area and the second storage area, is generated.
According to the above configuration, the acquired data can be stored in two different storage areas.
In another configuration, each of the plurality of pieces of data may be a batch of pieces of data that can be processed at a destination.
According to the above configuration, a plurality of batches of pieces of data that can be processed at destinations can be acquired and the plurality of batches of pieces of data can be transmitted together. This allows efficient data transmission.
In another configuration, the transmission data may be generated so that the destination information is included in a data portion of a frame of the transmission data.
According to the above configuration, the destination information can be included in the data portion of the frame of the transmission data.
In another configuration, the transmission data may be generated so that the source information is included in a data portion of a frame of the transmission data.
According to the above configuration, the source information can be included in the data portion of the frame of the transmission data.
Also, the one exemplary embodiment may be implemented in a form of a communication control apparatus for executing the communication control program. Alternatively, the one exemplary embodiment may be a communication control method.
Another configuration is an information processing system including a first information processing apparatus and a second information processing apparatus each having communication functionality. The first information processing apparatus includes a transmission data generation unit and a transmission unit. The transmission data generation unit generates transmission data which includes a plurality of pieces of data having different destinations. The transmission unit transmits the transmission data in either one of a broadcast fashion and a multicast fashion. The second information processing apparatus includes a data retrieval unit for receiving the transmission data and retrieving at least data destined for an own apparatus which is included in the transmission data.
According to the above configuration, the first information processing apparatus can transmit together a plurality of pieces of data having different destinations to a plurality of devices, thus efficiently transmitting the plurality of pieces of data. The second information processing apparatus can receive the transmission data and retrieve therefrom data destined for an own apparatus.
Another configuration is a communication control program executed by a computer of an information processing apparatus having communication functionality. The communication control program causes the computer to execute: generating transmission data which includes a plurality of pieces of data having different destinations; and specifying a predetermined destination address and transmitting the transmission data to the specified predetermined destination address.
According to the above configuration, for example, when a broadcast address is specified as a predetermined destination address, the plurality of pieces of data can be transmitted to the entire network. When, for example, a unicast address is specified as the predetermined destination address, the plurality of pieces of data can be transmitted to one device.
According to the exemplary embodiment, the plurality of pieces of data having different destinations can efficiently be transmitted.
These and other objects, features, aspects and advantages of the exemplary embodiment will become more apparent from the following detailed description of the exemplary embodiment when taken in conjunction with the accompanying drawings.